const ByfuidGenerator = require('./generator');

// 创建全局实例
const generator = new ByfuidGenerator();

/**
 * 生成 BYFUID
 * @param {string} [userData] - 12字符用户数据（可选）
 * @param {string} [customData] - 自定义数据（可选）
 * @returns {string} 512字符的BYFUID（已去除换行符）
 */
function generateByfuid(userData = null, customData = null) {
  return generator.generateByfuid(userData, customData);
}

/**
 * 验证 BYFUID 长度
 * @param {string} byfuid - 要验证的BYFUID
 * @returns {boolean} 长度是否有效
 */
function validateByfuidLength(byfuid) {
  return generator.validateByfuidLength(byfuid);
}

// 导出公共API
module.exports = {
  generateByfuid,
  validateByfuidLength,
  ByfuidGenerator,
  // 为了向后兼容，也导出实例
  generator
};

// 导出版本信息
module.exports.version = '0.1.1';